package config

// Description  : 读取配置文件
// Author       : MMingzhao
// Date         : 2020-01-09 18:02

import (
	"github.com/jinzhu/configor"
	log "github.com/sirupsen/logrus"
)

// Config 存储全局配置信息
type Config struct {
	Server Server
	Run    struct {
		Mode string `default:"debug"`
	}
	Db DataBase
}

// Server 应用信息
type Server struct {
	// 应用名称
	ApplicationName string `default:"application"`
	// 应用名称
	Port string `default:"8000"`
}

// DataBase 数据库信息
type DataBase struct {
	Name      string
	User      string `default:"root"`
	Password  string `required:"true" env:"DBPassword"`
	Addr      string `required:"true"`
	Port      string
	ParseTime bool   `default:"true"`
	Log       bool   `default:"true"`
	Type      string `required:"true"`
	Prefix    string
}

// Info 读取配置信息
var Info Config

// Init 配置信息初始化函数
func init() {
	err := configor.Load(&Info, "resources/application.yml")
	if err != nil {
		log.Fatal("配置文件初始化读取失败。。。")
	}
}
